#ifndef LECTORDOCUMENTO_H
#define LECTORDOCUMENTO_H

#include <QObject>
#include "FragmentoImpresion.h"

class LectorDocumento
{
public:
    LectorDocumento(FragmentoImpresion* documento);
    virtual ~LectorDocumento();

    void devolverElemento(ElementoImpresion* elemento);
    ElementoImpresion* obtenerSiguienteElemento();
    bool quedanElementos();
    void limpiar();

protected:
    bool quedanElementosDevueltos();
    bool quedanElementosEnDocumento();

private:
    FragmentoImpresion* documento;
    int indiceElementoActualDocumento;
    QList<ElementoImpresion*> listaElementosDevueltos;    
};

#endif // LECTORDOCUMENTO_H
